#include "wrap.h"

// 客户端程序
#define CLIT_PORT 8888 	//这个是服务器的端口号

void client(char *argv[]){
	// 客户端程序步骤:
	int clit_fd, ret;	// 其实clit_fd为服务器的套接字
	struct sockaddr_in clit_addr;	
	char buf[1024];

	// 1. 创建套接字
	clit_fd = socket(AF_INET,SOCK_STREAM, 0);

	// 2.（客户端可以不进行bind绑定）直接进行connect连接
	clit_addr.sin_family = AF_INET;
	clit_addr.sin_port = htons(CLIT_PORT);
	//clit_addr.sin_addr.s_addr = htonl(INADDR_ANY);	
	inet_pton(AF_INET, argv[1], (struct in_addr*)&clit_addr.sin_addr.s_addr);
	
	Connect(clit_fd, (struct sockaddr*)&clit_addr, sizeof(clit_addr));

	// 3. 使用read和write进行读写
	while(1){
		bzero(buf,sizeof(buf));
		fgets(buf,sizeof(buf),stdin);	// 从键盘获取一行数据
		Write(clit_fd, buf, sizeof(buf));
		Read(clit_fd,buf, sizeof(buf));
		Write(STDOUT_FILENO,buf,sizeof(buf));	// 打印至屏幕上
	}
	// 4. 关闭套接字
	close(clit_fd);
}

int main(int argc, char *argv[]){
	client(argv);
}
